﻿using System;
using System.Collections.Generic;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using Anthem;
using BusinessRules;
using Common;
using DataAccess;
using Microsoft.ApplicationBlocks.ExceptionManagement;

public partial class SitiosEjecucionMultiplesZonas : PageBase
{
    #region ZonasRegionalizacion
    private DataTable ZonasRegionalizacion
    {

        get
        {
            DataTable objTable = null;
            if (Cache["SitiosEjecucionMultiplesZonas.aspx" + Session.SessionID] != null)
                objTable = (DataTable)Cache["SitiosEjecucionMultiplesZonas.aspx" + Session.SessionID];
            return objTable;
        }
        set
        {
            if (value != null)
            {
                Cache.Insert("SitiosEjecucionMultiplesZonas.aspx" + Session.SessionID, value);
            }
        }
    }
    #endregion

    #region IdentificadorMetId
    public string IdentificadorMetId
    {
        get { return (ViewState["IdentificadorMetId"] == null ? string.Empty : ViewState["IdentificadorMetId"].ToString()); }
        set { ViewState["IdentificadorMetId"] = value; }
    }
    #endregion

    #region IdentificadorAccId

    public string IdentificadorAccId
    {
        get { return (ViewState["IdentificadorAccId"] == null ? string.Empty : ViewState["IdentificadorAccId"].ToString()); }
        set { ViewState["IdentificadorAccId"] = value; }
    }

    #endregion

    #region IdentificadorPazId

    public string IdentificadorPazId
    {
        get { return (ViewState["IdentificadorPazId"] == null ? string.Empty : ViewState["IdentificadorPazId"].ToString()); }
        set { ViewState["IdentificadorPazId"] = value; }
    }

    #endregion

    #region IdentificadorSasId

    public string IdentificadorSasId
    {
        get { return (ViewState["IdentificadorSasId"] == null ? string.Empty : ViewState["IdentificadorSasId"].ToString()); }
        set { ViewState["IdentificadorSasId"] = value; }
    }

    #endregion

    #region IdentificadorSacId

    public string IdentificadorSacId
    {
        get { return (ViewState["IdentificadorSacId"] == null ? string.Empty : ViewState["IdentificadorSacId"].ToString()); }
        set { ViewState["IdentificadorSacId"] = value; }
    }

    #endregion

    #region StrPlnId

    public string StrPlnId
    {
        get
        {
            if (ViewState["strPlnId"] != null)
                return ViewState["strPlnId"].ToString();
            else
                return "";
        }
        set { ViewState["strPlnId"] = value; }
    }

    #endregion

    #region TraerContextItems

    private void TraerContextItems()
    {
        if (Context.Items["plnId"] != null)
            StrPlnId = Context.Items["plnId"].ToString();
        if (Context.Items["IdentificadorSasId"] != null)
            IdentificadorSasId = Context.Items["IdentificadorSasId"].ToString();
        if (Context.Items["IdentificadorSacId"] != null)
            IdentificadorSacId = Context.Items["IdentificadorSacId"].ToString();
        if (Context.Items["IdentificadorAccId"] != null)
            IdentificadorAccId = Context.Items["IdentificadorAccId"].ToString();
        if (Context.Items["IdentificadorMetId"] != null)
            IdentificadorMetId = Context.Items["IdentificadorMetId"].ToString();
        if (Context.Items["IdentificadorPazId"] != null)
            IdentificadorPazId = Context.Items["IdentificadorPazId"].ToString();



    }

    #endregion

    #region crearContextItems

    private void crearContextItems()
    {

        Context.Items["plnId"] = StrPlnId;
        Context.Items["IdentificadorSasId"] = IdentificadorSasId;
        Context.Items["IdentificadorSacId"] = IdentificadorSacId;
        Context.Items["IdentificadorAccId"] = IdentificadorAccId;
        Context.Items["IdentificadorMetId"] = IdentificadorMetId;
    }

    #endregion

    protected void Page_Load(object sender, EventArgs e)
    {
        WccAcciones1.AddEnabledDuringCallBack = false;
        WccAcciones1.AddTextDuringCallBack = "Guardando... Por favor esperar!!!";
        WccAcciones1.UpdateEnabledDuringCallBack = false;
        WccAcciones1.UpdateTextDuringCallBack = "Guardando... Por favor espere!!!";
        if (Manager.IsCallBack)
        {
            Manager.RegisterClientScriptBlock(typeof(Page), "reloj", "<script>muestraReloj2();</script>");
        }
        WccAcciones1.Permisos = Permisos;
        TraerContextItems();

        if (!Page.IsPostBack)
        {
            BindZonasRegionalizacion();
        }
        if (ZonasRegionalizacion != null)
        {
            gridZonas.DataSource = ZonasRegionalizacion.DefaultView;
            gridZonas.DataBind();
        }
    }

    #region Adcionar

    private void Adcionar()
    {
        SigPrgAccionZonaGeograficaData objDS = new SigPrgAccionZonaGeograficaData();
        SigProAccionDemograficaData objDSMatriz = new SigProAccionDemograficaData();
        try
        {
            SigPrgAccionZonaGeografica objBR = new SigPrgAccionZonaGeografica(ConfigurationManager.AppSettings["Conn"]);
            List<object> keyValues = gridZonas.GetSelectedFieldValues("ZON_ID");
            foreach (object key in keyValues)
            {
                DataRow objRow = objDS.NewRow();
                objRow[SigPrgAccionZonaGeograficaData.MET_ID_FIELD] = IdentificadorMetId;
                objRow[SigPrgAccionZonaGeograficaData.PAZ_ESPECIFICA_FIELD] = "";
                objRow[SigPrgAccionZonaGeograficaData.PAZ_OTROS_FIELD] =  "";
                objRow[SigPrgAccionZonaGeograficaData.ZON_ID_FIELD] = key.ToString();
                objDS.Add(objRow);
            }
            IdentificadorPazId = objBR.AdicionarSitiosContransacciones(objDS, objDSMatriz).ToString();

            lblMensaje.Visible = true;

            Utilidad.mostrarMensaje(Utilidad.TiposMensajes.Mensaje, Utilidad.TraerMensaje("gmsgExitoGuardar"), lblMensaje);
            WccAcciones1.Accion = Utilidad.Acciones.Actualizar;
            WccAcciones1.AddVisible = false;
            WccAcciones1.UpdateVisible = false;
            WccAcciones1.DeleteVisible = false;
            WccAcciones1.AuditVisible = false;
        }
        catch (Exception objEx)
        {
            ExceptionManager.Publish(objEx);
            lblMensaje.Visible = true;
            Utilidad.mostrarMensaje(Utilidad.TiposMensajes.Error, Utilidad.TraerMensaje("gmsgErrorGeneral"), lblMensaje);
        }


    }

    #endregion


    private void BindZonasRegionalizacion()
    {
        SigAccion objSigAccion = new SigAccion(ConfigurationManager.AppSettings["Conn"]);
        DataTable objDataTableDepartamentos = objSigAccion.ConsultarTodaslasZonas();
        ZonasRegionalizacion = objDataTableDepartamentos;
        gridZonas.DataSource = ZonasRegionalizacion.DefaultView;
        gridZonas.DataBind();
    }
    protected void btnGuardar_Click(object sender, EventArgs e)
    {
        
    }
    protected void WccAcciones1_Add_OnClick(object sender, ImageClickEventArgs e)
    {
        this.Adcionar();
        crearContextItems();
        Server.Transfer("SitiosEjecucionListado.aspx?SSM_ID=19", true);
    }
    protected void btnRegresar_Click(object sender, ImageClickEventArgs e)
    {
        crearContextItems();
        Server.Transfer("SitiosEjecucionListado.aspx?SSM_ID=19", true);
    }
}
